<!DOCTYPE HTML><html lang="en">
<HEAD>

<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >

<meta charset="utf-8">
<TITLE>
Modifying the workspace
</TITLE>

<link rel="stylesheet" type="text/css" HREF="../book.css">
</HEAD>
<BODY>
<h2>Modifying the Workspace</h2>
<p>In the course of performing its function, your plug-in may need to make changes to resources in the workspace.
The workspace is an important data model for many plug-ins in the system, many of which rely on keeping up with
the current state of the workspace.  Plug-ins may even be concurrently updating the workspace.  It's important
for your plug-in to act as a responsible workspace citizen when making changes to resources.  What makes a plug-in 
a good workspace citizen?
</p>

<ul>
<li><b>Batching</b> of changes where possible to avoid flooding the system with unnecessary events or triggering
unnecessary processing on an interim state.</li>
<li><b>Listening</b> to resource change events and updating models as the workspace changes.</li>
<li><b>Fine-grained locking</b> of the workspace when making modifications instead of locking the entire workspace.</li>
</ul>

<p>The next few sections look at these concepts in more detail. 
</p>

</BODY>
</HTML>
